#include "grtcirc.h"
#include "strptime.h"
#include "jeeps/gpsmath.h"
+#include "xmlgeneric.h" // for xml_fill_in_time.
#define MYNAME "CSV_UTIL"
(strcmp(fmp->key, "HMSL_TIME") == 0) ) {
wpt->creation_time += addhms(s, fmp->printfc);
} else
- if (strcmp(fmp->key, "ISO_TIME") == 0) {
- wpt->creation_time = xml_parse_time(s, NULL);
+ if ((strcmp(fmp->key, "ISO_TIME") == 0) ||
+ (strcmp(fmp->key, "ISO_TIME_MS") == 0)) {
+ wpt->creation_time = xml_parse_time(s, &wpt->microseconds);
} else
if (strcmp(fmp->key, "GEOCACHE_LAST_FOUND") == 0) {
wpt->gc_data.last_found = yyyymmdd_to_time(s);
if (strcmp(fmp->key, "ISO_TIME") == 0) {
writetime(buff, sizeof buff, "%Y-%m-%dT%H:%M:%SZ", wpt->creation_time, 1 );
} else
+ if (strcmp(fmp->key, "ISO_TIME_MS") == 0) {
+ xml_fill_in_time(buff, wpt->creation_time,
+ MICRO_TO_MILLI(wpt->microseconds), XML_LONG_TIME);
+ } else
if (strcmp(fmp->key, "GEOCACHE_LAST_FOUND") == 0) {
writebuff(buff, fmp->printfc, time_to_yyyymmdd(wpt->gc_data.last_found));
} else
</screen>
</section>
+<section id="style_def_isotimems">
+<title>ISO_TIME_MS</title>
+<para>
+ ISO_TIME_MS is much like ISO_TIME, but expresses milliseconds at the
+ end of the timestamp.
+ It is thus in the format yyyy-mm-ddThh:mm:ss.SSSzzzzz
+ where 'SSS' is milliseconds and zzzzzz is the local time offset
+ or the character Z for UTC time.
+ On output, UTC 'Z' time zone will always be used.
+</para>
+<para>
+example:
+</para>
+<screen format="linespecific"> IFIELD ISO_TIME_MS,"","%s"
+</screen>
+</section>
+
<section id="style_def_geodiff">
<title>GEOCACHE_DIFF</title>
<para>